using System;
using System.Collections.ObjectModel;
using StockholmsStad.Windows.UI.Modules.Minister.BusinessEntities;
using StockholmsStad.Windows.UI.Modules.Minister.Models;
using StockholmsStad.Runtime.Serialization.DataContract;
using System.Collections.Generic;

namespace StockholmsStad.Windows.UI.Modules.Minister.Interfaces
{
    public interface IMinisterService
    {
        MinisterPresentationModel AddNewMinister();
        MinisterPresentationModel GetMinister(int ministerId);

        ObservableCollection<MinisterPresentationModel> GetMinisters();

        ObservableCollection<MinisterPresentationModel> GetMinisters(string partOfName, DateTime? startDate,
            DateTime? endDate, bool isActive);

        MinisterServiceList GetTimeBlocks(int ministerId);

        List<ValueIdPair> GetLanguages();
    }
}
